#ifndef RAWIVFILEPLUGIN_H
#define RAWIVFILEPLUGIN_H

#include "../../data/fileplugin.h"

namespace PBVP {
	///
	class RawIVFilePlugin : public QObject, public FilePluginInterface
	{
		Q_OBJECT
		Q_INTERFACES(PBVP::FilePluginInterface)

	public:
		///
		RawIVFilePlugin();
		///
		~RawIVFilePlugin();

		virtual QString description() const {
			return QString("Access .rawiv volume file");
		}

		/// 
		virtual void initialize(MainInterface* pMainInterface);

		/// 
		virtual void unload() {}

		/// 
		virtual DataSetType type() const {
			return VOLUME_DATA;
		}

		virtual QString extension() const {
			return QString(".rawiv");
		}

		/// 
		virtual DataInterface* loadFile(const QString &fname);

		/// 
		virtual bool saveFile(DataInterface* pData, const QString &fname);

	private:

	};

}
#endif // RAWIVFILEPLUGIN_H
